草庐IT

android - future 日期的 DateUtils.getRelativeTimeSpanString

全部标签

带毫秒的 PHP 格式日期有效但解析失败

我使用以下格式Y-m-d\TH:i:s.v\Z来遵循JavaScripttoISOString实现(2011-10-05T14:48:00.000Z).如果我有一个DateTime并且我想格式化它,一切正常,但是我无法解析使用这种格式的字符串。$format='Y-m-d\TH:i:s.v\Z';$stringDateTime=(new\DateTime())->format($format);var_dump(date_create_from_format($format,$stringDateTime));我使用的是PHP7,我已经用PHP7.0、7.1和7.2测试了上面的代码。我

php - 获取给定 DateTime 的下一个,如果日期不同则跳过

我想从给定的日期和时间获取下个月的日期和时间。这是我现在拥有的:$dt=newDateTime('2019-01-31');for($i=0;$iadd(newDateInterval('P1M'));$final=$dt->format('Y-m-d');echo$final."\n";}//Output://2019-03-03//2019-04-03//2019-05-03//2019-06-03//2019-07-03问题是,它将日期从“31”更改为“02”,因为在2月,没有第31天。所以在没有30或31的月份中,我想跳过这些几个月,但保持天数不变。所以这里应该是预期的输出:/

PHP函数获取日期格式?

我知道如何使用日期格式字符串,将date('Y/m/dH:i:s');转换为2009/12/1811:37:45。我想要一个可以执行相反操作的函数-查看格式化日期然后返回格式。PHP中有吗?原因是我们的数据库中保存了各种格式的时间戳,我正在编写一个工具来处理我们所有的旧表并分析日期条目。编辑:所以我想没有一种直接的方法可以做到这一点。我在想我可以使用strftime(),它返回自纪元以来的秒数。所以一个更好的问题是我可以在mySQL数据库的时间戳字段中使用以秒为单位的时间吗?我想如果表的结构是时间戳而不是varchar(有时是这样),这会起作用。 最佳答案

php - 按日期列对多维数组进行排序,如果日期相同,则使用其他列值

我有一个存储人的多维数组。Array(id93294=>array(Name=>"TomAnderson",Birthday=>"03/17/1975",Hometown=>'St.Louis',CurrentLocation=>'Mars'),id29349=>(array(Name=>"TomAnderson",Birthday=>"03/17/1975",Hometown=>'NewYork',CurrentLocation=>'NewYork'))有点像,除了为人们提供更多信息,所以我想先按生日排序然后按另一个属性排序(如果他们的家乡与他们当前位置匹配)但是一旦我对数组进行第二

PHP输出本地时区调整后的日期时间

我的印象是PHPDateTime类的format()函数导出了它最初传递的时间戳,并应用了正确的偏移量。我开始意识到这样做没有意义。因此,我想将数据库(UTC)中的时间戳与用户时区一起存储在对象中,并能够根据我想要UTC日期还是用户时区调整日期来输出它。我已经开始扩展DateTime类来执行此操作,但我想知道我是否遗漏了DateTime中的现有方法或DateTime类为何如此工作背后的思考过程。大概我还需要一些静态工厂方法,它们可以获取时间戳、时区以及传入的时间戳是用户调整的时间戳还是UTC时间戳,并能够进行必要的调整以实例化一个标准化的来自传入时间的UTC版本的DateTime对象。

php - 在 PHP 中以毫秒为单位获取特定日期的纪元时间

我正在尝试以毫秒为单位获取特定日期的纪元时间。但是,如果我得到以秒为单位的时间并乘以1000,我会得到这种格式的值-1.3E+12。我希望返回值的格式类似于1300000000000。这可能吗? 最佳答案 看起来您在32位平台上使用PHP。现在,Unix纪元时间戳(您从time()获得的)是一个31位有符号整数。在32位平台上,PHP本身不能支持大于32位的整数。当您尝试将它乘以1000时,结果是一个41位整数。因为PHP不能这样做,所以它将整数转换为float。作为副作用,您在回显时会看到简短的科学记数法。因为PHP也不能用毫秒表

php - 用PHP计算两个日期之间的工作时间

我有一个函数可以返回两个日期之间的差异,但是我需要计算出工作时间的差异,假设周一到周五(上午9点到下午5:30)://DATEDIFFFUNCTION//Settimezonedate_default_timezone_set("GMT");//TimeformatisUNIXtimestampor//PHPstrtotimecompatiblestringsfunctiondateDiff($time1,$time2,$precision=6){//Ifnotnumericthenconverttextstounixtimestampsif(!is_int($time1)){$tim

php - 如何更改日期格式? (YII)

我正在使用YII框架...我正在使用以下代码显示我的日期:created_date?>问题是它是这样显示的:2012-11-0409:34:03如何去掉时间而只显示日期?如果可能的话,也许可以这样显示:2012年1月20日(月份缩短) 最佳答案 你可以使用Yii的CFormatter类:echoYii::app()->format->date(strtotime($classified->created_date));您可以将CFormatter扩展到您自己的类中,然后根据需要格式化日期,您只需要在主配置文件中包含新的组件类即可。另

php - 如何更改 "zend_log"中的日期格式

如何更改Zend_Log的日期格式?现在每个新的日志条目前面都添加了带有时间戳的日期:“2013-01-28T16:47:54+01:00...一些日志消息...”但我想像这样格式化这个日期:“Y-m-dH:i:s...一些日志消息...”我的代码是这样的:classGame_Logger{publicfunction__construct($val,$txt=null){$writer=newZend_Log_Writer_Stream(APPLICATION_PATH.'/../log/log.log');$logger=newZend_Log($writer);if(is_arr

php 获取语言环境特定的日期格式

确定当前给定语言环境的短日期格式的最佳方法是什么?例如,如果我的脚本的语言环境设置为荷兰语,我想以某种方式获取该特定语言环境中使用的短日期格式,它将是:年月日如果设置为美国,我想获取美国语言环境中的日期格式:月/日/年等等…… 最佳答案 您可以使用Intl根据所选区域设置格式化日期的PHP扩展:$locale='nl_NL';$dateObj=newDateTime;$formatter=newIntlDateFormatter($locale,IntlDateFormatter::SHORT,IntlDateFormatter::